package com.tan.common.domain.chat;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

import com.tan.common.domain.BaseModel;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * <p>
 *
 * </p>
 *
 * @author Tan
 * @since 2025-01-27
 */
@Getter
@Setter
@ToString
@TableName("chat_group_user")
public class ChatGroupUser extends BaseModel {

    @Serial
    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 群id
     */
    private Long groupId;

    /**
     * 用户id
     */
    private Long userId;

    /**
     * 用户群角色 群主，管理员，普通群成员
     */
    private String groupRole;

    /**
     * 群备注
     */
    private String groupRemark;

    /**
     * 群昵称
     */
    private String groupNickName;

    /**
     * 显示群昵称/显示系统用户名 show_group_nick,show_user_name
     */
    private String showName;

    /**
     * 进群状态 申请进群，已进群
     */
    private String state;

    /**
     * 审核时间
     */
    private LocalDateTime reviewerTime;

    /**
     * 申请时间
     */
    private LocalDateTime applyTime;

    /**
     * 邀请人（群主管理员邀请直接可进群，普通成员邀请需审核）
     */
    private Long fromUser;


    private Boolean delFlag;
}
